In prior art data processing systems of the type employing a plurality of peripheral devices such as card readers, printers, etc., it has been customary for the peripheral devices, acting through some sort of controller, to request an interruption of the central processor program for the purpose of reporting the status of the interrupting peripheral devices. In these prior art systems it has been customary to execute a series of instructions during which the interrupting device is identified, and then execute a second instruction to obtain from the interrupting device its status. Once the status is received from the interrupting device, the central processor vectors or jumps to an appropriate subroutine to analyze the cause of the interrupt and determine what should be done in response thereto.
The interrupt handling apparatus of the prior art requires a considerable number of special hardware components and special software and is thus costly in addition to consuming more processor time than necessary to process interrupt requests. Furthermore, some of the recently developed microprocessors have only a limited number of instructions for communicating with peripheral devices. For example, the INTEL 8080 microprocessor may communicate with peripheral devices only with an input and an output instruction. This has restricted the procedure and increased the time required to process an interrupt request and vector to a subroutine to analyze the interrupt.